---
title: Vitess
sidebarTitle: Vitess
---

This is the implementation of the Vitess data handler for MindsDB.

[Vitess](https://vitess.io/) is a database solution for deploying, scaling, and managing large clusters of open-source database instances. It currently supports MySQL and Percona Server for MySQL. It's architected to run as effectively in a public or private cloud architecture as it does on dedicated hardware. It combines and extends many important SQL features with the scalability of a NoSQL database.

## Prerequisites

Before proceeding, ensure the following prerequisites are met:

1. Install MindsDB [locally via Docker](https://docs.mindsdb.com/setup/self-hosted/docker) or use [MindsDB Cloud](https://cloud.mindsdb.com/).
2. To connect Vitess to MindsDB, install the required dependencies following [this instruction](/setup/self-hosted/docker#install-dependencies).
3. Install or ensure access to Vitess.

## Implementation

This handler is implemented by extending the MySQL data handler.

The required arguments to establish a connection are as follows:

* `user` is the database user.
* `password` is the database password.
* `host` is the host name, IP address, or URL.
* `port` is the port used to make TCP/IP connection.
* `database` is the database name.

## Usage

In order to make use of this handler and connect to the Vitess server in MindsDB, the following syntax can be used:

```sql
CREATE DATABASE vitess_datasource
WITH
  ENGINE = "vitess",
  PARAMETERS = { 
    "user": "root",
    "password": "",
    "host": "localhost",
    "port": 33577,
    "database": "commerce"
  };
```

You can use this established connection to query your table as follows:

```sql
SELECT *
FROM vitess_datasource.product
LIMIT 10;
```
